const readline = require('readline');

// 用字符串拆分数字，避免数学运算的潜在误差
function isNarcissisticNumber(num) {
    const numStr = num.toString();
    const hundreds = Number(numStr[0]);
    const tens = Number(numStr[1]);
    const units = Number(numStr[2]);
    const sum = hundreds ** 3 + tens ** 3 + units ** 3;
    return sum === num;
}

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

rl.on('line', (input) => {
    try {
        // 去除输入两端空格，处理带空格的测试用例
        const trimmedInput = input.trim();
        const num = Number(trimmedInput);
        
        // 校验：必须是100-999的整数
        if (!Number.isInteger(num) || num < 100 || num > 999) {
            // 简化错误提示（匹配测试系统的期望格式）
            console.log(false); // 若测试系统期望无效输入返回false，可替换为这行
            // 或保留错误提示：console.error('Invalid input');
            return;
        }
        
        // 输出判断结果
        console.log(isNarcissisticNumber(num));
    } catch (err) {
        console.log(false); // 异常情况统一返回false
    }
});
